"""
   -*- coding: utf-8 -*-
   @Time    : 2021/4/23 14:03
   @Author  : 狠欢
   @File    : zuoye.py
   @Software: PyCharm
"""

############ 2.列表去重，排序
"""
可变数据类型：列表、字典、集合
不可变数据类型：元组、字符串、整型
"""
# list1 = [1,2,11,4,5,2,2,2,3,5,7,8,9,1,2,2]
# list2 =list(set(list1))
# print(list2)

#############3、如果在一个函数内部修改全局变量
# def a_a():
#     global b
#     b = 1
# a_a()

#############4、如何跨模块共享全局变量
# 在一个模块里面定义一个全局变量，然后再另外一个模块引用

##############5、python数据类型有哪些
# 可变数据类型：列表、字典、集合
#  不可变数据类型：元组、字符串、整型

##############6、python中生成随机整数（1-10），随机小数（1-10），0-1之间小数的方法
import random
# print(random.randint(1, 10))
# print(random.uniform(1,10))
# print(random.random())

##############7、python2与python3 的区别，列出5个
# 1.Python2 中存在经典类和新式类的区别，Python3 统一采用新式类。新式类声明要求继承 object，必须用新式类应用多重继承。
# 2. print 语句被 Python3 废弃，统一使用 print 函数


###############8、python中哪些是可变数据类型，哪些是不可变数据类型，为什么

# 可变数据类型是：当变量的值发生改变时，变量的地址不发生改变
# 不可变数据类型：当变量的值发生改变时，变量得地址发生了改变

################9、统计字符串中每个单词出现的次数
# a = "aaaassssdddd"
# print(a.count('a'))

#################10、给定一个字符串，找到字符串中第一个重复的字符
# b = "dfasds"
# for i in b:
#     for j in b:
#         if j==i:
#             print(i)
#         break

##################11、什么是pep8
# 缩进，4个空格

##################12、python里如何赋值，深拷贝与浅拷贝的区别
#  赋值相当于引用变量，赋值过程中，只是名字（相当于起了一个别名），地址还是一样的
#  浅拷贝分为3种形式：字符串的切片、还有工厂函数（list(),str()、set()）,在原来的变量上改变他们的值，或者值的类型发生改变，浅拷贝只拷贝数据外面的一层
# 深拷贝是拷贝嵌套的所有数据

# 在高级语言中，变量是对内存及其地址的抽象。对于python而言，python的一切变量都是对象，变量的存储，采用了引用语义的方式，存储的只是一个变量的值所在的内存地址，而不是这个变量的只本身。
# 浅拷贝：会创建新对象，其内容是原对象的引用

##################13、简述python的内存管理机制
#  引用计数机制： python内部使用引用计数，来保持追踪内存中的对象，Python内部记录了对象有多少个引用，即引用计数，当对象被创建时就创建了一个引用计数，当对象不再需要时，这个对象的引用计数为0时，它被垃圾回收。
# 垃圾回收机制：当引用计数的变量为0时，或者两个变量互相引用时，会被当作垃圾清除
# 内存池机制，

##################14、使用python实现冒泡排序

##################15、使用python实现快速排序

##################16、输出九九乘法表

# for i in range(1,10):
#     for j in range(i,10):
#         print(f'{i}*{j}={i*j}', end='')
#     print("")

##################17、重复接受用户的数据，如果是正整数就输出结果，否则一直输入
# while 1:
# #     num = input("请输入整数：")
# #     if num.isdigit():
# #         print(num)
# #         break
# #     else:
# #         print("输入的不是正整数，请继续输入")

##################18、有两个列表[11,-3,4,5,2,1,8] , [9,3,4,2,6,-10] 把它们合并成一个列表，并且从小到大排序

list1 = [11,-3,4,5,2,1,8]
list2 = [9,3,4,2,6,-10]

print(sorted(list1+list2))

###################19、a+=1 与 a=a+1 有什么区别

# 第二个产生了新的对象，第一个没有

